package org.kzwl.service.app;


import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import org.kzwl.comm.pojo.ResponseData;
import org.kzwl.comm.pojo.bo.category.CategoryBasic;
import org.kzwl.comm.pojo.bo.live.GetStreamUrlBO;
import org.kzwl.comm.pojo.bo.live.LiveNotifyBO;
import org.kzwl.comm.pojo.dto.category.CategoryDTO;
import org.kzwl.comm.pojo.dto.live.GetLiveBackDTO;
import org.kzwl.comm.pojo.dto.live.GetStreamUrlDTO;
import org.kzwl.comm.pojo.dto.live.LiveBasicDTO;
import org.kzwl.comm.utils.PagingCondition;
import org.kzwl.entity.app.Category;
import org.kzwl.entity.app.CuLive;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author 张国伟/郭家恒
 * @since 2020-09-10
 */
public interface LiveService extends IService<CuLive> {

    //查询直播
    IPage<LiveBasicDTO> queryBasic(PagingCondition bo);

    //获得直播推流
    GetStreamUrlDTO getPushUrl(GetStreamUrlBO bo);

    //获得直播间拉流
    GetStreamUrlDTO getPullUrl(GetStreamUrlBO bo);

    //停止直播
    void stopLive();

    //录制回调
    void liveNotify(LiveNotifyBO bo);

    //获得直播回放
    IPage<GetLiveBackDTO> getPlayBack(PagingCondition bo);
}
